package firstStage.part3;

//for循环

//思考:任意数字的指定位上的数值如何求?
//先使用整除操作将要求的数字移动到个位上,再使用取余操作取出最后一位上的值
public class ForLoopDemo {
    public static void main(String[] args) {
        int sum = 0;
        // for循环
        for (int i = 1; i < 6; i++) {
            System.out.println("你好==== " + i);
        }
        for (int i = 1; i < 101; i++) {
            if (i % 2 == 0) {
                sum += i;
            }
        }
        System.out.println("1到100之间的偶数和：" + sum);

        // 需求:在控制台输出所有的“水仙花数”
        // 什么是"水仙花数”?
        // ①水仙花数是一一个三位数
        // 111 222 333 370 371 520 999
        // ②水仙花数的个位、十位、百位的数字立方和等于原数 3*3*3+7*7*7+1*1*1=371
        int count = 0;    //代表计数器
        for (int i = 100; i < 1000; i++) {
            // 在计算之前获取三位数中每个位上的值
            int a = i % 10;
            int b = i / 10 % 10;
            int c = i / 10 / 10 % 10;
            // 判定条件是将三位数中的每个数值取出来，计算立方和后与原始数字比较是否楣等
            if (a * a * a + b * b * b + c * c * c == i) {
                // 输出满足条件的数字就是水仙花数
                count++;
                System.out.println("水仙花数：" + i);
            }
        }
        System.out.println("水仙花数个数：" + count);
    }
}
